package com_2;

import jdk.swing.interop.SwingInterOpUtils;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

public class Test {//定义了一个测试类

    public static void main(String[] args) {//main方法入口
        List<Student> list = new ArrayList<>();//创建list对象
        Student s1 = new Student("乔峰", "25");//创建学生类的对象
        Student s2 = new Student("段玉", "26");//创建学生类的对象
        Student s3 = new Student("段王爷", "27");//创建学生类的对象
        list.add(s1);//使用对象调用add放进行元素储存
        list.add(s2);//使用对象调用add方法进行元素储存
        list.add(s3);//使用对象调用方法进行元素储存
        for (int i = 0; i < list.size(); i++) {//使用常规for循环进行遍历
            Student s = list.get(i);//使用get方法进行获取元素值
            System.out.println(s);//输出对象
        }///
        System.out.println("---------");//
        for (Student s : list) {//使用增强for循环进行遍历
            System.out.println(s);//输出变量名
        }
        System.out.println("----------");//
        Iterator<Student> iterator = list.iterator();//使用迭代器进行获取迭代器对象
        while (iterator.hasNext()) {//使用while循环进行判断
            Student s = iterator.next();//使用next方法进行获取元素
            System.out.println(s);//输出对象
        }
        System.out.println("----------");//

        ListIterator<Student> ListIterator = list.listIterator();//使用list迭代器进行创建对象
        while (ListIterator.hasNext()) {//使用while循环进行判断
            Student s = ListIterator.next();//使用listnext方法进行获取元素
            System.out.println(s);//输出变量也就是获取的元素
        }
        while (ListIterator.hasPrevious()) {//使用反向获取方法进行判断，如果有元素，则需要进行反向获取
            Student s = ListIterator.previous();//反向获取遍历元素
            System.out.println(s);//输出对象
        }

    }
}
